﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace MPR.Poker.Model.SYS
{
    public class SYS_DisplayConfig
    {
        private bool m_IsNewCol = false;
                
        #region Member
        private Int64 m_IDSys = 0;
        private int m_LanguageIDSys = 0;
        private string m_TableName = string.Empty;
        private int m_OrderIndex = 0;
        private bool m_IsVisible = false;
        private string m_ColumnName = string.Empty;
        private string m_DisplayName = string.Empty;
        private string m_DataFormat = string.Empty;
        private int m_ColumnWidth = 0;
        private string m_HeaderAlign = string.Empty;
        private string m_DataAlign = string.Empty;
        private string m_TextColor = string.Empty;
        private string m_ColumnType = string.Empty;
        private string m_Method = string.Empty;
        private bool m_IsEdit = false;        
        #endregion
        #region Properties
        /// <summary>
        /// IDSys
        /// 
        /// </summary>
        [Key, DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
        public Int64 IDSys
        {
            get { return m_IDSys; }
            set { m_IDSys = value; }
        }
        /// <summary>
        /// LanguageIDSys
        /// 
        /// </summary>
        public int LanguageIDSys
        {
            get { return m_LanguageIDSys; }
            set { m_LanguageIDSys = value; }
        }
        /// <summary>
        /// TableName
        /// Tên bảng
        /// </summary>
        public string TableName
        {
            get { return m_TableName; }
            set { m_TableName = value; }
        }
        /// <summary>
        /// OrderIndex
        /// Thứ tự
        /// </summary>
        public int OrderIndex
        {
            get { return m_OrderIndex; }
            set { m_OrderIndex = value; }
        }
        /// <summary>
        /// IsVisible
        /// Ẩn/Hiện
        /// </summary>
        public bool IsVisible
        {
            get { return m_IsVisible; }
            set { m_IsVisible = value; }
        }
        /// <summary>
        /// ColumnName
        /// Tên cột
        /// </summary>
        public string ColumnName
        {
            get { return m_ColumnName; }
            set { m_ColumnName = value; }
        }
        /// <summary>
        /// DisplayName
        /// Tên hiển thị
        /// </summary>
        public string DisplayName
        {
            get { return m_DisplayName; }
            set { m_DisplayName = value; }
        }
        /// <summary>
        /// DataFormat
        /// Định dạng
        /// </summary>
        public string DataFormat
        {
            get { return m_DataFormat; }
            set { m_DataFormat = value; }
        }
        /// <summary>
        /// ColumnWidth
        /// Chiều rộng
        /// </summary>
        public int ColumnWidth
        {
            get { return m_ColumnWidth; }
            set { m_ColumnWidth = value; }
        }
        /// <summary>
        /// HeaderAlign
        /// Canh tiêu đề
        /// </summary>
        public string HeaderAlign
        {
            get { return m_HeaderAlign; }
            set { m_HeaderAlign = value; }
        }
        /// <summary>
        /// DataAlign
        /// Canh dữ liệu
        /// </summary>
        public string DataAlign
        {
            get { return m_DataAlign; }
            set { m_DataAlign = value; }
        }
        /// <summary>
        /// TextColor
        /// Màu chữ
        /// </summary>
        public string TextColor
        {
            get { return m_TextColor; }
            set { m_TextColor = value; }
        }
        /// <summary>
        /// ColumnType
        /// 
        /// </summary>
        public string ColumnType
        {
            get { return m_ColumnType; }
            set { m_ColumnType = value; }
        }
        /// <summary>
        /// Method
        /// Phương thức tổng hợp
        /// </summary>
        public string Method
        {
            get { return m_Method; }
            set { m_Method = value; }
        }
        /// <summary>
        /// IsEdit
        /// Cho phép chỉnh sửa
        /// </summary>
        public bool IsEdit
        {
            get { return m_IsEdit; }
            set { m_IsEdit = value; }
        }
        
        /// <summary>
        /// IsNewCol
        /// Là cột mới thêm
        /// </summary>
        [NotMapped]
        public bool IsNewCol
        {
            get { return m_IsNewCol; }
            set { m_IsNewCol = value; }
        }

        #endregion
        #region Constructor
        public SYS_DisplayConfig()
        {
        }
        #endregion
        #region Column Names
        public const String colIDSys = "IDSys";
        public const String colLanguageIDSys = "LanguageIDSys";
        public const String colTableName = "TableName";
        public const String colOrderIndex = "OrderIndex";
        public const String colIsVisible = "IsVisible";
        public const String colColumnName = "ColumnName";
        public const String colDisplayName = "DisplayName";
        public const String colDataFormat = "DataFormat";
        public const String colColumnWidth = "ColumnWidth";
        public const String colHeaderAlign = "HeaderAlign";
        public const String colDataAlign = "DataAlign";
        public const String colTextColor = "TextColor";
        public const String colColumnType = "ColumnType";
        public const String colMethod = "Method";
        #endregion
    }
}
